Back
 
Special thanks to Tony Dwyer for this excelling contributions
name Thinner 
author KrazY_IvaN (bdwyer7@mcione.com) 
iff code xx2xx3xx4x 
;This bug was written for  
;the SlimFast Tournament at 
;Battle Dome. 
;The iff code has been changed 
;to protect my bug from specialized 
;iff code attacks. 
raise shield 
_Main: 
long range scan  
goto _Longscan #scan 
scan perimeter 
goto _Perscan #scan 
scan forward 
goto _Fwdscan #scan 
gosub _Move #cur_head 
move forward 
if damage is = 0 then goto _Main 
lower shield 
if damage is > 0 then attempt repairs 
if damage is > 0 then attempt repairs 
raise shield 
goto _Main 
_Longscan 2: 
move backward 
if ammo is < 10 then goto _Evade 
lower shield 
launch missile 
raise shield 
turn left 
move forward 
turn right 
long range scan 
goto _Longscan #scan 
goto _Main 
_Evade: 
turn right 
move forward 
turn left 
goto _Main 
_Longscan 5: 
scan forward 
if scan found flag then goto _Fwdscan 5 
if scan found nothing then move forward 
goto _Main 
_Perscan 2: 
if value #enemy_d < 100 then discharge energy 
if value #enemy_d < 100 then discharge energy 
if value #enemy_d < 100 then discharge energy 
goto _Main 
_Perscan 5: 
scan left 
if scan found flag then turn left 
if scan found flag then goto _Fwdscan 5 
scan right 
if scan found flag then turn right 
if scan found flag then goto _Fwdscan 5 
goto _Evade 
_Move 1: 
if value #x_pos > #enemy_x then turn left 
if value #x_pos < #enemy_x then turn right 
return 
_Move 2: 
if value #y_pos > #enemy_y then turn left 
if value #y_pos < #enemy_y then turn right 
return 
_Move 3: 
if value #x_pos > #enemy_x then turn right 
if value #x_pos < #enemy_x then turn left 
return 
_Move 4: 
if value #y_pos > #enemy_y then turn right 
if value #y_pos < #enemy_y then turn left 
return 
_Fwdscan 0: 
gosub _Move #cur_head 
move forward 
move forward 
move forward 
move forward 
scan perimeter 
goto _Perscan #scan 
if bump barrier then goto _Bar 
goto _Main 
_Fwdscan 5: 
if damage is = 0 then move backward 
if damage is = 0 then discharge energy 
if damage is > 0 then move forward 
if damage is > 0 then move forward 
if damage is > 0 then move forward 
if damage is > 0 then move forward 
goto _Main 
_Fwdscan 2: 
if ammo is < 3 then goto _Evade 
move forward 
move forward 
lower shield 
fire weapon 
fire weapon 
raise shield 
goto _Main 
_Bar: 
generate random 
if value #random <> 1 then if value #random <> 3 then turn right 
if value #random <> 2 then if value #random <> 2 then turn left